The present invention generally pertains to the field of computer networking. More particularly, the present invention pertains to power management in a network adapter with more than one power source, such as a network adapter equipped with remote wakeup capability.
A computer system""s functionality is dramatically enhanced by coupling stand-alone computers together to form a computer network. In a computer network, users may readily exchange files, share information stored on a common database, pool resources, and communicate via e-mail and video teleconferencing. Another advantage of computer networks is that they can be accessed from remote locations via a modem or various other types of communication equipment.
One popular type of computer network is known as a local area network (LAN). LANs connect multiple computers together such that the users of the computers can access the same information and share data. Typically, in order to be connected to a LAN, a general purpose computer requires a peripheral device generally known as a network adapter or network interface card (NIC). Essentially, the NIC works with the operating system and central processing unit (CPU) of the host computer to control the flow of information over the LAN. NICs may also be used to connect a computer to the Internet.
Remote access to a computer network (e.g., a LAN) is facilitated by providing the capability to start or wake up a computer from a remote location. This feature is advantageous to a user desiring access to a computer from a remote location. This feature is also advantageous to a network administrator, allowing the administrator to perform, for example, maintenance activities on a computer system from a remote location.
A standard has been developed for allowing a networked computer which is in sleep mode to be awakened. More specifically, Advanced Micro Devices (AMD) of Santa Clara, Calif., has developed a technology referred to as the Magic Packet technology. In the Magic Packet technology, assuming, for example, that an Ethernet controller is running and communicating with the network, the computer""s power management hardware or software puts the Ethernet controller into the Magic Packet mode prior to the system going to sleep. Once in the sleep mode, the computer will be awakened when a Magic Packet is detected. That is, incoming data will be monitored until the specific sequence comprising the Magic Packet is detected. The Magic Packet technology and the associated standard (generally referred to as the Wakeon LAN standard) are well known in the art.
Accordingly, some NICs are designed to detect a Magic Packet and to awaken the computer (or selected components within the computer) in response. These NICs are typically connected in a standard fashion to the computer (e.g., to the computer""s motherboard) via a bus such as a PCI (peripheral component interconnect) bus. These NICs also are connected to the motherboard via a separate cable (e.g., a remote wakeup cable) for revision 2.1 of the PCI specification. Thus, NICs that provide a remote wakeup capability typically have a primary power source from the motherboard and an auxiliary power source from the. remote wakeup cable. When the computer is powered on and awake, power to the NIC is provided over the PCI bus from the primary power source, typically five volts (5V). When the computer system is in the sleep mode, power to the NIC is provided over the remote wakeup cable from the auxiliary power source, typically also 5V. Therefore, when a Magic Packet is received, the NIC will have power and hence the ability to wake up. The NIC also can then send a PME (power management event) signal via the remote wakeup cable to wake up the computer.
Because there are more than one power sources in a NIC with remote wakeup capability, there is a potential for a power contention issue. Various techniques can be used to address the potential for power contention. One technique utilizes a hardware design to implement a method wherein power from one source is selected (for example, the auxiliary power source) over the other source (for example, the primary power source) when power from both sources is available.
However, this prior art technique is problematic because it is not possible to differentiate between power from the primary power source and power from the auxiliary power source. For example, a NIC can include an application specific integrated circuit (ASIC) that is intended to perform different known functions and operations depending on whether it is receiving power from the primary power source or from the auxiliary power source. Hence, it is desirable for the ASIC to be able to differentiate between the primary power source or from the auxiliary power source. However, the prior art is problematic because these sources are both +5V, and so at the ASIC one source of power is not distinguishable from the other.
This problem is further aggravated by the introduction of revision 2.2 of the PCI specification (xe2x80x9cPCI 2.2xe2x80x9d). With PCI 2.2, the aforementioned PCI bus is required to provide another auxiliary power source in addition to the power sources described above. In accordance with PCI 2.2, pin A14 of the PCI bus provides a 3.3V auxiliary power source to the NIC. Thus, a NIC with the remote wakeup capability and compliant with PCI 2.2 can have three power sources, aggravating the issue described above with regard to the ASIC (or other effected components) being able to distinguish one power source from another.
Thus, a need exists for a device or method that identifies when an auxiliary power source (such as an auxiliary power source associated with a remote wakeup function or an auxiliary power source associated with PCI 2.2) is available. A further need exists for a device or method that addresses the above need and provides the capability to differentiate between a primary power source (e.g., +5V over a bus) and an auxiliary power source (e.g., +5V over a remote wakeup cable). The present invention provides a novel solution to these needs.
The present invention provides a device and method thereof that identify when an auxiliary power source (such as an auxiliary power source associated with a remote wakeup function or an auxiliary power source associated with PCI specification revision 2.2) is available. The present invention also provides a device and method thereof that differentiate between a primary power source (e.g., +5V over a bus) and an auxiliary power source (e.g., +5V over a remote wakeup cable).
Specifically, in one embodiment of the present invention, the circuit and method thereof indicate availability of a power source other than a first power source (e.g., the primary power source) in a computer system peripheral device (such as a network adapter) connected to a plurality of power sources (e.g., one or more auxiliary power sources in addition to the primary power source). The circuit includes a circuit subassembly coupled to the first (e.g., primary) power source and a second (e.g., auxiliary) power source. The circuit subassembly conducts current from the first power source when power is not available from the second power source and otherwise conducts current from the second power source. A first component is coupled to the circuit subassembly and conducts current when the second power source is available; otherwise, it does not conduct current. A second component is coupled to the circuit subassembly and to the first component. The second component conducts current when the first component is conducting current and otherwise does not conduct current. An output lead is coupled to the second component, and the output lead provides a signal indicating the second power source is available.
In one embodiment, the signal consists of the presence of a voltage applied to the output lead, indicating the second power source is available.
In the present embodiment, a third component is connected to the circuit subassembly. The third component conducts current when the first component is not conducting current.
In the present embodiment, the first component is a diode and the second and third components are field effect transistors (FETs).
In one embodiment, a fourth component is coupled between the first (e.g., primary) power source and the second (e.g., auxiliary) power source. The fourth component conducts current from the first power source when power is not available from the second power source. Intrinsic to the fourth component is a fifth component adapted to conduct current from the first power source in combination with the fourth component and substantially prevents current from flowing from the second power source to the first power source. In the present embodiment, the fourth component is a FET and the fifth component is a diode. Thus, in this embodiment, power from the second power source is used when power is available from the second power source, and otherwise power from the first power source is used.
In one embodiment, a third power source is coupled to the output lead.
In one embodiment, the first power source is a five volt (5V) source connected to the peripheral device via a peripheral component interconnect (PCI) bus, the second power source is an auxiliary 5V source connected to the peripheral device via a remote wakeup cable, and the third power source is an auxiliary 3.3V source connected to the peripheral device in accordance with PCI specification revision 2.2.
Thus, the present invention provides a circuit and method thereof for indicating availability of a power source other than the first power source (for example, the availability of an auxiliary power source in addition to or in lieu of a primary power source). The present invention also provides a circuit and method thereof that differentiate between, for example, a 5V primary power source and a 5V auxiliary power source.
These and other advantages of the present invention will no doubt become obvious to those of ordinary skill in the art after having read the following detailed description of the preferred embodiments which are illustrated in the various drawing figures.